package testes;
import javax.microedition.midlet.*;  
import javax.microedition.lcdui.*;  
 
public class ImplicitList extends MIDlet implements CommandListener  
{ 
  private Display display;     // Reference to Display object
  private List lsDocument;     // Main list
  private Command cmExit;      // Command to exit
  private Command cmAdd;       // Command to add an element
 
  public ImplicitList()  
  { 
    display = Display.getDisplay(this);  
 
    // Create the Commands
    cmExit = new Command("Exit", Command.EXIT, 1);  
    cmAdd = new Command("Add", Command.SCREEN, 1);  
 
    // Create array of corresponding string objects
     String options[] = {" Next", " Previous", " New"};  
 
     // Create list using arrays, add commands, listen for events
     lsDocument = new List("Document Option:",  
	                     List.IMPLICIT, options, null);  
     lsDocument.addCommand(cmExit);  
     lsDocument.addCommand(cmAdd);  
     lsDocument.setCommandListener(this);  
  }  
 
  public void startApp()  
  { 
    display.setCurrent(lsDocument);  
  }  
 
  public void pauseApp()  
  { 
  }  
  
  public void destroyApp(boolean unconditional)  
  { 
  }  
 
  public void commandAction(Command c, Displayable s)  
  { 
    // If an implicit list generated the event
    if (c == List.SELECT_COMMAND)  
    { 
      switch (lsDocument.getSelectedIndex())  
      { 
        case 0:  
          System.out.println("Next");  
          break;  
 
        case 1:  
          System.out.println("Previous");  
          break;  
 
        case 2:  
          System.out.println("New");  
          break;  
        default:  
          System.out.println("New Element");  
      }  
    }  
    else if (c == cmAdd)    
      { 
        try  
        { 
          // Add a new element. Using size() as the insertion point,
          // the element will appended to the list.
          lsDocument.insert(lsDocument.size(), " Delete ",  
                            Image.createImage("/delete.png"));  
        }  
        catch (java.io.IOException e)  
        { 
          System.err.println("Unable to locate or read .png file");  
        }  
      }  
      else if (c == cmExit)  
      { 
        destroyApp(false);  
        notifyDestroyed();  
      }  
   }  
}  
